The invention is generally related to the design of integrated circuits. More specifically, the invention is generally related to the design of integrated circuits based around digital signal processors (DSP""s) from modular reusable components.
As semiconductor fabrication technology advances, designers of integrated circuits are able to integrate more and more functions into a single integrated circuit device, or chip. As such, electronic designs that once required several integrated circuits electrically coupled to one another on a circuit board or module may now be integrated into a single integrated circuit, thereby increasing performance and reducing cost.
One function that has been migrated from discrete circuits to integrated circuits is digital signal processing, which is generally the application of mathematical operations to digitally represented signals. Digital signal processing is utilized in a number of applications, such as to implement filters for audio and/or video signals, to decode information from communications signals such as in wireless or other cellular networks, etc.
As integrated circuit designs continue to increase in performance and complexity, the design of such circuits becomes increasingly complex and time consuming. Integrated circuits are often made up of hundreds of thousands or even millions of individual transistors. As a consequence, the ability to automate the design process and thereby shift the burden for designing integrated circuits from man to machine is a constant need in the art.
To facilitate the design of integrated circuits, software programs, also referred to as xe2x80x9ctoolsxe2x80x9d, have been developed to permit a developer to define an integrated circuit design at a relatively higher conceptual level, and then have operations such as synthesizing the physical layout of the integrated circuit design, testing the integrating circuit design, etc., performed automatically by the tool. Integrated circuit design has paralleled many of the concepts embodied in object-oriented software design as well, where lower-level functionalities for a design are compartmentalized into objects, referred to herein as xe2x80x9ccircuit blocksxe2x80x9d, that have been developed, tested and validated for reuse in multiple designs. Design of an integrated circuit can therefore proceed by assembling multiple circuit blocks together to the extent possible, and then developing any xe2x80x9cglue logicxe2x80x9d necessary to interface the circuit blocks together into an operative design. The functionality encapsulated within circuit blocks has also increased over time, i.e., from relatively simple circuit blocks that represented simple logical components such as multiplexers and registers, to more complex functional components such as bus interfaces, memory arrays and interfaces, test circuits, etc. Some circuit blocks are also developed to interface over standardized interfaces, thereby further minimizing the amount of additional custom circuitry required to implement such blocks in custom designs.
By utilizing an assemblage of pre-existing circuit blocks, development time can be substantially reduced, as a developer is often required to generate only minimal circuitry that interfaces the pre-existing blocks, rather than recreating the blocks from scratch. A circuit designer is also able to rely on the previous validation and testing performed on a pre-existing block such that testing can occur at more conceptual higher level, to essentially test how the blocks will function when combined together in a design.
A number of software tools, often referred to as xe2x80x9cdesign reuse toolsxe2x80x9d, have been developed to integrate much of the design, testing, validation and synthesis operations into an integrated package that permits a developer to quickly locate suitable circuit blocks, integrate the circuit blocks into an operative design, and synthesize and/or perform testing or validation on the design to create a manufacturable circuit. In addition, some design reuse tools support the use of templates, which function as a form of compilable circuit block that allows a developer to configure higher-level reusable blocks to meet specific needs. Through the use of templates, for example, a user may be permitted to input a few custom parameters for a given block, and have a customized block generated therefrom automatically that meets the specified parameters.
Circuit reuse has also advanced to the point where complete processing units may be defined, validated and tested as self-sufficient xe2x80x9ccorexe2x80x9d blocks that can be combined with interface circuitry and other logic to define a custom processing circuit. Typically, such core blocks support standardized interfaces such as communication busses, such that any circuit block that is capable of interfacing with such a standardized interface can be integrated with the core block with little or no additional circuitry. For digital signal processing applications, for example, DSP core blocks have been developed to provide a programmable digital signal processing infrastructure through which high performance, repetitive and numerically intensive tasks can be performed. DSP core blocks are particularly well suited to design reuse since digital signal processing applications tend to be more application-specific than general purpose microprocessors and other processing circuitry. Specifically, digital signal processing functionality is required in a wide variety of applications, each of which requires different inputs, outputs and other support circuitry. As such, a significant demand exists for integrating DSP core blocks with additional circuitry to develop custom DSP integrated circuit designs. Doing so combines the benefits of a DSP processor, such as programmability, development tools, and software libraries, with the benefits of custom circuits, such as low production costs, small size and lower power consumption.
Development of custom, application-specific DSP integrated circuits is often more expensive and time consuming than for standard, higher volume designs. Application-specific integrated circuits, in particular, are typically produced in lower volumes, and as such, the development costs of such designs are comparatively high. Often, due to greater variability and design, testing and validation of a ASIC design involves more complex test analysis and implementation.
To date, the development of custom, application-specific DSP integrated circuits has had little support in terms of design reuse and automated synthesis, validation and testing. Development time and costs are therefore increased, as is the time to market relative to other types of integrated circuits. Consequently, a significant need continues to exist in the art for greater automation in the design process of custom DSP integrated circuits.
The invention addresses these and other problems associated with the prior art by providing an apparatus, program product and method for use in automating the design of a custom DSP integrated circuit from a preexisting DSP core block and one or more additional circuit blocks interfaced with the DSP core block. Specifically, an input display is displayed to a user, and utilized to receive user input from the user for use in automatically building a custom DSP integrated circuit. The input display includes at least one selection input component for use in selecting at least one optional circuit block for inclusion in the custom DSP integrated circuit, and at least one configuration input component for use in customizing a customizable circuit block to be included in the custom DSP integrated circuit. The user input received from the user through the input display selects the optional circuit block and customizes the customizable circuit block. Based upon such input, a custom DSP integrated circuit is automatically built by generating a custom circuit block from the customizable circuit block and interfacing the preexisting DSP core block with the optional circuit block and the custom circuit block.
These and other advantages and features, which characterize the invention, are set forth in the claims annexed hereto and forming a further part hereof. However, for a better understanding of the invention, and of the advantages and objectives attained through its use, reference should be made to the Drawings, and to the accompanying descriptive matter, in which there is described exemplary embodiments of the invention.